//version 2017-02-08
/**
 * 页面具有记忆功能
 */
//列表页查询参数记忆
function buildQueryParamCacheKeyAndSetCache(reqParam,queryParamCacheKeyId,callback) {
    var queryParamCacheKey = randomStr(10)
    $.getJSON("admin/util/set_cache/"+queryParamCacheKey,{cacheValue:JSON.stringify(reqParam),
        date:new Date().getTime()},function (data) {
        $("#"+queryParamCacheKeyId).val(queryParamCacheKey)
        callback.call()
    })
}
//恢复上次参数
function restoreBuildQueryParam(queryParamCacheKey,callback) {
    if(queryParamCacheKey!=''){
        $.getJSON("admin/util/get_cache/"+queryParamCacheKey,{date:new Date().getTime()},function (data) {
            if(data.code == 0){
                if(data.info && data.info!=null){
                    var reqParam = JSON.parse(data.info)
                    for(var name in reqParam){
                        var value = reqParam[name]
                        var formNode =$(".searchForm").find("[name='"+name+"']")
                        if(formNode){
                            var type = formNode.attr("type")
                            if(type=='radio'){
                                $("input[name='"+name+"'][value='"+value+"']").attr("checked",true);
                            }else{
                                if(formNode.is('select')){
                                    if(formNode.hasClass("multiple-select2-ajax")
                                        ||formNode.hasClass("single-select2-ajax")
                                    ){
                                        formNode.attr("values",value)
                                        //下面这段代码为了临时先补充默认值，因为select2自动填充需要ajax等待，如果时间低于分页数据，那就没数据了
                                        formNode.empty()
                                        if(value && value!=''){
                                            var arr = value.split(',')
                                            for(var i=0;i<arr.length;i++){
                                                formNode.append('<option selected value="'+arr[i]+'"></option>');
                                            }
                                        }
                                        formNode.trigger('change')
                                    }else if(formNode.hasClass("multiple-select2-basic")){
                                        if(value && value!=''){
                                            formNode.val(value.split(',')).trigger('change')
                                        }
                                    }
                                    else {
                                        formNode.val(value)
                                    }
                                }else{
                                    formNode.val(value)
                                }
                            }
                        }

                    }
                    $("#start").val(reqParam.start)
                    $("#limit").val(reqParam.limit)
                }
            }
            callback.call()
        })
    }else {
        callback.call()
    }
}